There has heretofore been known a virtual machine (VM) technique capable of virtually using one computer as a plurality of servers by operating a plurality of operating systems (OS) on a single server device. Here, the single server device refers to a computer such as a workstation or a personal computer. Products to which this type of technology is applied include “VMWare ESX Server” by VMWare, Inc., “Virtual Server” by Microsoft Corporation, “Xen” by XenSource, Inc. in the United States, and the like. With those products, a new virtual machine can be generated on a server device by issuing a command for generating a VM.
Further, in a distributed-processor environment in which a plurality of server devices are connected via a network, there has been known a technique to transfer a virtual machine generated on one server device to another server device. For example, documents disclosing migration technology of a virtual machine include Japanese Unexamined Patent Application Publication No. 10-283210 (hereinafter referred to as “Patent Document 1”). Furthermore, VMware provides a migration function for a virtual machine as “vMotion,” and Xen provides a transfer function for a virtual machine as “migration.”
Thus, in an environment in which a plurality of server devices are distributed, a method of randomly selecting a server device having enough resources has heretofore been employed to newly generate a virtual machine, as disclosed by Japanese Unexamined Patent Application Publication No. 2005-115653 (hereinafter referred to as “Patent Document 2”). According to Patent Document 2, if there is no server device having enough resources, generation of a new virtual machine is abandoned, and an error message is displayed. Furthermore, according to Patent Document 2, data indicative of the performance of existing virtual machines are measured at predetermined intervals asynchronous with generation of a new virtual machine, and a combination of virtual machines and server devices that maximizes the total performance of the virtual machines at those intervals is computed based on the measured data on the assumption that each of the virtual machines is operated on one of a plurality of the server devices. Reallocation of the virtual machines is performed based on the computed combination.
As described above, the conventional technique randomly selects a server device having enough resources at the time of generating a new virtual machine and generates a virtual machine on the selected server device. Accordingly, the conventional technique has the following problems.
A first problem is that a newly generated virtual machine is unlikely to exhibit satisfactory performances and is likely to exert an adverse influence on other existing virtual machines. This is because a probability that a server device randomly selected will be one optimum for generation of a new virtual machine is considerably low.
A second problem is that there is a great possibility that a new virtual machine cannot be generated. This is because a new virtual machine cannot be generated if there is no server device having enough resources.